'''
json 全称
json指的是javascript对象格式书写的文本数据
javascript 对象表示法
'''
import copy
import json

# python对象 字典数据
dictA = {"姓名":"王大锤","性别":"男","年龄":28}
print(type(dictA))

# 在字典、列表等对象外面加上 单引号 就是json数据
# json数据 在python中就是字典或列表格式的字符串
a = '{"姓名":"王大锤","性别":"男","年龄":28}'
print(type(a))

# python对象转换为json数据
# 通过json.dumps
dictA = {"姓名":"王大锤","性别":"男","年龄":28}
a = json.dumps(dictA,ensure_ascii=False) # ensure_ascii=False作用显示原文字，不显示代码
print(a)
print(type(a))

# json数据转换为pyhton对象
# 通过 json.loads 函数转换
b = '{"姓名":"王大锤","性别":"男","年龄":18}'
c = json.loads(b)
print(c)
print(type(c))

# 冒泡排序
# my_list = [1, 4, 7, 2, 5, 8]
# for i in range(len(my_list)):
#     for j in range(i, len(my_list)):
#         if my_list[i] > my_list[j]:
#             my_list[i], my_list[j] = my_list[j], my_list[i]
# print(my_list)
# for i in range(3):
#     print(i)
# 瓶子A = '醋'
# 瓶子B = '酱油'
# 瓶子C = '空'
# 冒泡排序
# listA = [30,22,19,13,35,8]

# a = 5
# b = 10
# c = 0
# # 交换a和b的值
# c = a
# a = b
# b = c
# print(a,b)
# listA = [30,22,19,13,35,8]
# for n in range(0,5):
#     if listA[n] > listA[n+1]:
#         temp = listA[n]
#         listA[n] = listA[n+1]
#         listA[n+1] = temp
# print(listA)
# # [22, 19, 13, 30, 8, 35]
# for n in range(0,4):
#     if listA[n] > listA[n+1]:
#         temp = listA[n]
#         listA[n] = listA[n+1]
#         listA[n+1] = temp
# print(listA)

listB = [15,14,13,12,11]
for n in range(0,4):
    if listB[n] > listB[n+1]:
        listB[n],listB[n+1] = listB[n+1],listB[n]
print(listB)

# 深拷贝 和 浅拷贝
listA = ["a",["b","c"]]
# 浅拷贝 第一层数据是用的新的内存地址，剩下的内存还是公用的内存地址
listB = copy.copy(listA)
listA[0] = '王大锤'
listA[1][0] = '王思聪'
print(listB)
print(listA)


# 深拷贝 完全拷贝了对像和子对象